﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Raffles.OA.Data
{
    #region 菜单类型
    public enum MenuTypeEnum
    {
        /// <summary>
        /// 目录
        /// </summary>
        [Description("目录")]
        Directory = 1,
        /// <summary>
        /// 页面
        /// </summary>
        [Description("页面")]
        Menu = 2,
        /// <summary>
        /// 按钮
        /// </summary>
        [Description("按钮")]
        Button = 3,
        /// <summary>
        /// 新窗口
        /// </summary>
        [Description("新窗口")]
        NewPage = 4
    }
    #endregion

    #region 数据状态
     
    public enum EnabledMarkEnum
    {
        /// <summary>
        /// 启用
        /// </summary>
        [Description("启用")]
        Enable = 1,
        /// <summary>
        /// 禁用
        /// </summary>
        [Description("禁用")]
        Disable = 0 
    }
    #endregion

    #region 是否

    public enum YesOrNoEnum
    {
        /// <summary>
        /// 否
        /// </summary>
        [Description("否")]
        No = 0,
        /// <summary>
        /// 是
        /// </summary>
        [Description("是")]
        Yes = 1 
    }
    #endregion

    #region 数据范围

    public enum DataScopeEnum
    {
        /// <summary>
        /// 全部
        /// </summary>
        [Description("全部")]
        ALL,
        /// <summary>
        /// 仅本人
        /// </summary>
        [Description("仅本人")]
        SELF
    }
    #endregion

    #region 工作流类型

    public enum FlowTypeEnum
    {
        /// <summary>
        /// 请假流程
        /// </summary>
        [Description("请假流程")]
        Holiday,
        /// <summary>
        /// 报销流程
        /// </summary>
        [Description("报销流程")]
        Reimbursement,
        /// <summary>
        /// 出差流程
        /// </summary>
        [Description("出差流程")]
        BusinessTrip
    }
    #endregion

    #region 工作流审批类型

    public enum AuditTypeEnum
    {
        /// <summary>
        /// 按部门负责人
        /// </summary>
        [Description("按部门负责人")]
        Department = 1,
        /// <summary>
        /// 按角色用户
        /// </summary>
        [Description("按角色用户")]
        Role = 2,
        /// <summary>
        /// 按单个用户
        /// </summary>
        [Description("按单个用户")]
        User = 3
    }
    #endregion

    #region 自定义编号规则

    public enum NumberRuleEnum
    {
        /// <summary>
        /// 年
        /// </summary>
        [Description("年")]
        yyyy,
        /// <summary>
        /// 年月
        /// </summary>
        [Description("年月")]
        yyyyMM,
        /// <summary>
        /// 年月日
        /// </summary>
        [Description("年月日")]
        yyyyMMdd,
        /// <summary>
        /// 年月日时分秒
        /// </summary>
        [Description("年月日时分秒")]
        yyyyMMddHHmmss
    }
    #endregion

    #region Job任务状态
    /// <summary>
    /// Job任务状态
    /// </summary>
    public enum JobStatusEnum
    {
        /// <summary>
        /// 已暂停
        /// </summary>
        [Description("已暂停")]
        Pause,
        /// <summary>
        /// 运行中
        /// </summary>
        [Description("运行中")]
        Run
        
    }
    #endregion

    #region Job执行状态
    /// <summary>
    /// 执行状态
    /// </summary>
    public enum OperateStatusEnum
    {
        /// <summary>
        /// 失败
        /// </summary>
        [Description("失败")]
        Fail,
        /// <summary>
        /// 成功
        /// </summary>
        [Description("成功")]
        Success
    }
    #endregion

    #region 审批表单状态

    public enum AuditStatusEnum
    {
        /// <summary>
        /// 草稿
        /// </summary>
        [Description("草稿")]
        Drapt,
        /// <summary>
        /// 审批中
        /// </summary>
        [Description("审批中")]
        InApproval,
        /// <summary>
        /// 审批通过
        /// </summary>
        [Description("审批通过")]
        Approved,
        /// <summary>
        /// 审批不通过
        /// </summary>
        [Description("审批不通过")]
        Reject
    }

    #endregion

    #region 审批动作状态

    public enum AuditActionEnum
    {
        /// <summary>
        /// 撤回
        /// </summary>
        [Description("撤回")]
        WithDraw,
        /// <summary>
        /// 发起申请
        /// </summary>
        [Description("发起申请")]
        Apply,
        /// <summary>
        /// 审批通过
        /// </summary>
        [Description("审批通过")]
        Approved,
        /// <summary>
        /// 审批不通过
        /// </summary>
        [Description("审批不通过")]
        Reject
    }

    #endregion

    #region 日志类型
    public enum DbLogType
    {
        /// <summary>
        /// 登录
        /// </summary>
        [Description("登录")]
        Login = 1,
        /// <summary>
        /// 退出
        /// </summary>
        [Description("退出")]
        Exit = 2,
        /// <summary>
        /// 新增
        /// </summary>
        [Description("新增")]
        Create = 3,
        /// <summary>
        /// 删除
        /// </summary>
        [Description("删除")]
        Delete = 4,
        /// <summary>
        /// 修改
        /// </summary>
        [Description("修改")]
        Update = 5,
        /// <summary>
        /// 异常
        /// </summary>
        [Description("异常")]
        Error = 6,
        /// <summary>
        /// 路由
        /// </summary>
        [Description("路由")]
        Route = 7,
        /// <summary>
        /// 接口
        /// </summary>
        [Description("接口")]
        Api = 8
    }
    #endregion 

    #region 角色类型(需要同角色管理表Code字段一致)
    public enum RoleTypeEnum
    {
        /// <summary>
        /// 销售
        /// </summary>
        [Description("销售")]
        Sale,
        /// <summary>
        /// 财务
        /// </summary>
        [Description("财务")]
        Fiance,
        /// <summary>
        /// 管理
        /// </summary>
        [Description("管理")]
        Admin
    }
    #endregion 

}
